namespace Study202{
  class Person{
    // 1.
    // name:string
    // age: number
    // sex:string
    // 声明和赋值合并
    // 一次性声明赋值需要加上访问修饰符，如果不加就是普通的形参
    // 如果参数过多，且应用场景很复杂，建议把参数定义放到constructor外边
    constructor(
      public age = 18,
      public name='王刚',
      public sex='未知'
    ) { };
    //以上构造函数写法 等价于以下代码段constructor2
    constructor2(age:22,name:'长生',sex:'男'){
      this.age = age
      this.name = name
      this.sex = sex
      // 可以直接输出形参
      console.log(age);
      // 可以直接输出属性值
      console.log();
    }
  }
}